<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class registrarCuenta extends CI_Controller {

    public function __construct() {
        parent::__construct();
        session_start();
        $this->load->model('establecimientom');
        $this->load->model('usuariosm');
        $this->load->model('establecimiento_x_usuariom');
        $this->load->model('tipo_habitacionm');
        $this->load->model('cuenta_x_usuariom');
    }

    public function index() {
        $data = array();
        $this->loadData($data);
    }

    public function loadData(&$data) {
        $this->escapar($_POST);
        $existeEmail = $this->establecimientom->validaremail($_POST["email"]);
        $existeEmail = $existeEmail[0]->cantidad;
        if ($existeEmail > 0) {
            $_SESSION["mensaje"]["contenido"] = "El email {$_POST["email"]} ya se encuentra registrado";
            $_SESSION["mensaje"]["tipo"] = "advertencia";
            if (empty($_SESSION['superusuario'])) {
                header("location:testinicio");
            } else {
                header("location:administrarCuentas");
            }
            exit();
        }
        $nombreUsuario = substr($_POST["nombre"], 0, 4);
        $nombreUsuario = str_replace(" ", "", $nombreUsuario);
        $nombreUsuario = trim($nombreUsuario);
        $nombreUsuario = strtolower($nombreUsuario);
        $fechaInicio = date("Y-m-d");
        $fechaFin = date("Y-m-d", strtotime('+30 day'));
        $_POST["email"] = trim($_POST["email"]);
        $pass = md5($nombreUsuario);
        $pass = substr($pass, 0, 4);
        $this->usuariosm->crearUsuario($nombreUsuario, $pass, $_POST["email"]);
        $idUsuario = mysql_insert_id();
        $this->establecimientom->crearEtablecimiento($_POST["nombre"], $_POST["paginaWeb"], $_POST["email"],$fechaFin);
        $id_establecimiento = mysql_insert_id();
        $this->establecimiento_x_usuariom->crearRegistro($id_establecimiento, $idUsuario);
        $this->tipo_habitacionm->crearTipos($id_establecimiento);
        $this->cuenta_x_usuariom->crearRegistro("1", $id_establecimiento, $idUsuario, $fechaInicio, $fechaFin, "activada");


        $cadena = "$id_establecimiento&$nombreUsuario&$pass";
        $to = $_POST["email"];
        $subject = "Bienvenido a Optilodging";
        $body = "\nCodigo hotel: $id_establecimiento\nUsuario: $nombreUsuario\nContraseña: $pass\nPor favor de click en el siguinte link para activar la cuenta: www.optilodging.com/activar?token=".base64_encode($cadena)."";
        mail($to, $subject, $body);
        $_SESSION["mensaje"]["contenido"] = "Se ha enviado un correo a {$_POST["email"]} para la activación de la cuenta.";
        $_SESSION["mensaje"]["tipo"] = "exito";
        if (empty($_SESSION['superusuario'])) {
            header("location:testinicio");
        } else {
            header("location:administrarCuentas");
        }
    }

}